/**
 * 
 */
package com.planner.core.util.exception;

import org.apache.commons.logging.Log;

/**
 * @author gautasa
 *
 */
/**
 * <p>
 * The base casm system exception. All system exceptions should extend this
 * class.
 * </p>
 * @author Simon Evans
 */
public abstract class BaseSystemException extends BaseException {

    /**
     * <p>
     * This constructor will log this exception to the specified log at the
     * specified log severity.
     * </p>
     * @param log The log that this exception should be logged to.
     * @param severity The severity at which this exception should be logged.
     * @param message Message describing the circumstances of the exception, and
     *            all relevant context information.
     * @param cause The exception that is the cause of this exception
     */
    public BaseSystemException(Log log, int severity, String message,
            Throwable cause) {
        super(log, severity, message, cause);
    }

    /**
     * <p>
     * This constructor will log this exception to the specified log at the
     * specified log severity.
     * </p>
     * @param log The log that this exception should be logged to.
     * @param severity The severity at which this exception should be logged.
     * @param message Message describing the circumstances of the exception, and
     *            all relevant context information.
     */
    public BaseSystemException(Log log, int severity, String message) {
        super(log, severity, message);
    }

    /**
     * <p>
     * Constructor.
     * </p>
     * @param message Message describing the circumstances of the exception, and
     *            all relevant context information.
     * @param cause The exception that is the cause of this exception
     */
    public BaseSystemException(String message, Throwable cause) {
        super(message, cause);
    }

    /**
     * <p>
     * Constructor, to be used when there is no root cause exception.
     * </p>
     * @param message Message describing the circumstances of the exception, and
     *            all relevant context information.
     */
    public BaseSystemException(String message) {
        super(message);
    }
}

